#################Exerccios da Aula 7 - Regresses Lineares Simples#############################3

#1. - Altura na Infncia e Na Vida Adulta
#H uma crena do senso-comum de que basta duplicar a altura aos dois anos de idade para descobrir a altura que uma criana ter quando se tornar adulta. Imagine uma amostra de oito pessoas adultas, tomada ao acaso de uma populao, para as quais temos as alturas atuais e as de quando tinham dois anos: 

#Altura aos dois anos (in) 39 30 32 34 35 36 36 30 
#Altura adulto (in) 71 63 63 67 68 68 70 64 

altura.c = c(39,30,32,34,35,36,36,30) 
altura.a = c(71,63,63,67,68,68,70,64)
altura.esp= altura.c*2
altura.a.cm = altura.a*2.54

#1.1 - Faa uma regresso da altura na idade adulta em funo da altura na idade de dois anos. H uma relao significativa? Por que?
> 
> plot(altura.a~altura.c)
> altura.r = lm(altura.a~altura.c)
> altura.esp = lm(altura.esp~altura.c)
> 
#1.2 -Faa um grfico de disperso com os dados, e acrescente a linha da regresso, e a linha esperada pela crena.
> 
> plot(altura.a~altura.c)
> abline(altura.r, lty=2, col="blue") #linha da regresso
> abline(altura.esp, lty=2, col="red") #linha esperada
> 
#1.3 -Calcule os intervalos de confiana dos coeficientes.
> 
> confint(altura.r)
                 2.5 %    97.5 %
(Intercept) 24.2881165 46.069026
altura.c     0.6094693  1.247674
> 
> #1.4 -Seus resultados corroboram a hiptese do senso comum? Por que?

A crena popular de duplicar a altura aos dois anos e resultar na altura na fase adulta no pode ser corroborada pela regresso. J que o valor 2 de declividade dificilmente ser obtido. 



#2. - Seriemas e Carcars

Use o conjunto de dados Aves no Cerrado para avaliar se o nmero de avistamentos de seriemas  afetado pelo nmero de Carcars avistados, em cada fisionomia de cerrado. Para cada pergunta abaixo indique os comandos que usou para respond-la (alm de respond-la  ). 

aves.c = read.csv("aves_cerrado.csv", sep=";")

#Correcao dos NAS
aves.c$urubu[is.na(aves.c$urubu)==T] <- 0
aves.c$seriema[is.na(aves.c$seriema)==T] <- 0
aves.c$carcara[is.na(aves.c$carcara)==T] <- 0

str(aves.c)
head(aves.c)

#Correcao de fisionomias
levels(aves.c$fisionomia)
aves.c$fisionomia[aves.c$fisionomia=="ce"]="Ce"
aves.c$fisionomia <- factor(aves.c$fisionomia, levels=c("CL","CC","Ce"))
levels(aves.c$fisionomia)

#2.1 - H relaes em alguma das fisionomias?

#Separando as fisionomias

aves.CC = aves.c[aves.c$fisionomia=="CC",]
aves.Ce = aves.c[aves.c$fisionomia=="Ce",]
aves.CL = aves.c[aves.c$fisionomia=="CL",]

> #Para fisionomia CC

> CC.r = lm(aves.CC$seriema~aves.CC$carcara)
> plot(aves.CC$seriema~aves.CC$carcara)
> abline(CC.r, lty=2, col="orange")
> coef(CC.r)
    (Intercept) aves.CC$carcara 
     5.67584746     -0.08262712 
> confint(CC.r)
                     2.5 %    97.5 %
(Intercept)      1.5826103 9.7690846
aves.CC$carcara -0.4535155 0.2882613
> 
> #Para fisionomia Ce
> Ce.r = lm(aves.Ce$seriema~aves.Ce$carcara)
> plot(aves.Ce$seriema~aves.Ce$carcara)
> abline(Ce.r, lty=2, col="orange")
> coef(Ce.r)
    (Intercept) aves.Ce$carcara 
      7.2526904      -0.1411600 
> confint(Ce.r)
                     2.5 %     97.5 %
(Intercept)      3.3511491 11.1542317
aves.Ce$carcara -0.3876934  0.1053733
> 
> #Para fisionomia CL
> CL.r = lm(aves.CL$seriema~aves.CL$carcara)
> plot(aves.CL$seriema~aves.CL$carcara)
> abline(CL.r, lty=2, col="orange")
> coef(CL.r)
    (Intercept) aves.CL$carcara 
      7.5833333      -0.4507576 
> confint(CL.r)
                    2.5 %     97.5 %
(Intercept)      4.985109 10.1815579
aves.CL$carcara -1.004701  0.1031858

> anova(CC.r)
Analysis of Variance Table

Response: aves.CC$seriema
                Df  Sum Sq Mean Sq F value Pr(>F)
aves.CC$carcara  1   1.289   1.289  0.2191 0.6454
Residuals       18 105.911   5.884               
> anova(Ce.r)
Analysis of Variance Table

Response: aves.Ce$seriema
                Df Sum Sq Mean Sq F value Pr(>F)
aves.Ce$carcara  1  7.129   7.129  1.4471 0.2446
Residuals       18 88.671   4.926               
> anova(CL.r)
Analysis of Variance Table

Response: aves.CL$seriema
                Df Sum Sq Mean Sq F value Pr(>F)
aves.CL$carcara  1 10.728  10.728  2.9226 0.1045
Residuals       18 66.072   3.671 

O resultado da anova() mostra que carcara explica muito pouco sobre a variao de seriemas nas 3 fisionomias. Entre as 3 fisionomias, somente a Campo Limpo obteve um Somatrio de Variao maior que 10000.


#2.2 -H diferenas entre as fisionomias?

> coef(CC.r)
    (Intercept) aves.CC$carcara 
     5.67584746     -0.08262712 
> confint(CC.r)
                     2.5 %    97.5 %
(Intercept)      1.5826103 9.7690846
aves.CC$carcara -0.4535155 0.2882613
> coef(Ce.r)
    (Intercept) aves.Ce$carcara 
      7.2526904      -0.1411600 
> confint(Ce.r)
                     2.5 %     97.5 %
(Intercept)      3.3511491 11.1542317
aves.Ce$carcara -0.3876934  0.1053733
> coef(CL.r)
    (Intercept) aves.CL$carcara 
      7.5833333      -0.4507576 
> confint(CL.r)
                    2.5 %     97.5 %
(Intercept)      4.985109 10.1815579
aves.CL$carcara -1.004701  0.1031858


plot(aves.c$seriema~aves.c$carcara)
abline(CC.r, col="blue")
abline(Ce.r, col="red")
abline(CL.r, col="gold")


aves.c1 = lm(aves.c$seriema~aves.c$carcara)
confint(aves.c1)
coef(aves.c1)
anova(aves.c1)

aves.c2 = lm(aves.c$seriema~aves.c$carcara+aves.c$fisionomia)
confint(aves.c2)
coef(aves.c2)
anova(aves.c2)
summary(aves.c2)

aves.c3 = lm(aves.c$seriema~aves.c$carcara*aves.c$fisionomia)
confint(aves.c3)
coef(aves.c3)
anova(aves.c3)

As regressoes mostram no haver relao significativa de seriema vs carcara + fisionomias. Os R2 obtidos para as regressoes tambem sao muito baixos, indicando que as variaveis explicam pouco a variacao de serimemas. A nica observacao que se pode tentar extrair esta na tendancia negativa (menos seriemas conforme aumenta carcars) das fisionomias pelo coeficiente das regressoes, mesmo assim o intervalo de confianca nos diz que essa relao pode ser negativa, nula e at mesmo positiva. A relao parece ser mais negativa para o Campo limpo

#3. - Resduos de Iris

#Uma maneira simples de descontar o efeito indesejado de uma co-varivel  usar os resduos de uma regresso de sua varivel de interesse em funo desta #co-varivel. Use as observaes da espcie Iris setosa, no objeto de dados iris para:

#3.1 - Fazer e interpretar uma regresso da largura da spala em funo do comprimento da spala.
> iris.setosa = iris[iris$Species=="setosa", ]
> iris.r = lm(Sepal.Width~Sepal.Length, data=iris.setosa)
> summary(iris.r)

Call:
lm(formula = Sepal.Width ~ Sepal.Length, data = iris.setosa)

Residuals:
      Min        1Q    Median        3Q       Max 
-0.723945 -0.182731 -0.003062  0.157380  0.517086 

Coefficients:
             Estimate Std. Error t value Pr(>|t|)    
(Intercept)   -0.5694     0.5217  -1.091    0.281    
Sepal.Length   0.7985     0.1040   7.681 6.71e-10 ***
---
Signif. codes:  0 *** 0.001 ** 0.01 * 0.05 . 0.1   1 

Residual standard error: 0.2565 on 48 degrees of freedom
Multiple R-squared: 0.5514,     Adjusted R-squared: 0.542 
F-statistic: 58.99 on 1 and 48 DF,  p-value: 6.71e-10 

> anova(iris.r)
Analysis of Variance Table

Response: Sepal.Width
             Df Sum Sq Mean Sq F value   Pr(>F)    
Sepal.Length  1 3.8821  3.8821  58.994 6.71e-10 ***
Residuals    48 3.1587  0.0658                     
---
Signif. codes:  0 *** 0.001 ** 0.01 * 0.05 . 0.1   1 


A regresso aponta haver uma relao forte entre a largura da sepala e seu comprimento. 


#3.2 - Fazer e interpretar a mesma regresso, mas descontando do efeito do comprimento da ptala de cada varivel.


iris.r1 = lm(Sepal.Width~Petal.Length, data=iris.setosa)
iris.r2 = lm(Sepal.Length~Petal.Length, data=iris.setosa)

R.larg = iris.r1$residuals
R.comp = iris.r2$residuals


iris.r3 = lm(R.larg~R.comp)
plot(R.larg~R.comp)
anova(iris.r3)
summary(iris.r3)

> anova(iris.r3)
Analysis of Variance Table

Response: R.larg
          Df Sum Sq Mean Sq F value    Pr(>F)    
R.comp     1 3.6630  3.6630  55.722 1.431e-09 ***
Residuals 48 3.1554  0.0657                      
---
Signif. codes:  0 *** 0.001 ** 0.01 * 0.05 . 0.1   1 
> summary(iris.r3)

Call:
lm(formula = R.larg ~ R.comp)

Residuals:
      Min        1Q    Median        3Q       Max 
-0.728584 -0.184140 -0.003015  0.164604  0.517692 

Coefficients:
             Estimate Std. Error  t value Pr(>|t|)    
(Intercept) 9.096e-18  3.626e-02 2.51e-16        1    
R.comp      8.049e-01  1.078e-01    7.465 1.43e-09 ***
---
Signif. codes:  0 *** 0.001 ** 0.01 * 0.05 . 0.1   1 

Residual standard error: 0.2564 on 48 degrees of freedom
Multiple R-squared: 0.5372,     Adjusted R-squared: 0.5276 
F-statistic: 55.72 on 1 and 48 DF,  p-value: 1.431e-09 

A regresso dos residuos de comprimento remove a variao de covariana de comprimento de petala. Pelos valores de variana obtidos na anova de iris.r3, podemos concluir que a relacao entre a largura e comprimento de sepala contra a de comprimento de petalas  muito pequena ou inexistente, j que que os resduos no explicados permanecem praticamente inalterados.
